package io.sage.ch06.objectmoving;

/**
 * 7.1 Move Method （搬移函数）
 * 问题场景：程序中，有个函数与其所驻类之外的另一个类进行更多的交流：调用后者，或者被后者调用
 * 重构思路：在该函数最常引用的类建立一个有着类似行为的新函数。将旧函数变成一个单纯的委托函数，或是将旧函数完全移除。
 * 做法：
 * 1）检查源类中被源函数所使用的一切特性（包括字段和函数），考虑他们是否也该被搬移。
 * 2）检查源类的子类和超类，看看是否有该函数的其他声明。如果有，则无法进行搬移。
 * 3）在目标类中声明这个函数。
 * 4）将源函数的代码复制到目标函数中。调整后者，使其能在新类中正常运行。
 * 5）编译目标类
 * 6）决定如何从源函数正确引用目标对象
 */
public class MoveMethod {
}
